package com.ds.applet.service.impl;

import java.util.List;

import com.ds.common.core.domain.entity.SysDictData;
import com.ds.common.utils.DateUtils;
import com.ds.system.mapper.SysDictDataMapper;
import org.springframework.stereotype.Service;
import com.ds.applet.mapper.MiniProductModelMapper;
import com.ds.applet.domain.MiniProductModel;
import com.ds.applet.service.IMiniProductModelService;
import org.springframework.transaction.annotation.Transactional;

import javax.annotation.Resource;

/**
 * 产品型号Service业务层处理
 *
 * @author liucan
 * @date 2024-03-25
 */
@Transactional
@Service
public class MiniProductModelServiceImpl implements IMiniProductModelService {
    @Resource
    private MiniProductModelMapper miniProductModelMapper;

    /**
     * 查询产品型号
     *
     * @param id 产品型号主键
     * @return 产品型号
     */
    @Override
    public MiniProductModel selectMiniProductModelById(Long id) {
        return miniProductModelMapper.selectMiniProductModelById(id);
    }

    /**
     * 查询产品型号列表
     *
     * @param miniProductModel 产品型号
     * @return 产品型号
     */
    @Override
    public List<MiniProductModel> selectMiniProductModelList(MiniProductModel miniProductModel) {
        return miniProductModelMapper.selectMiniProductModelList(miniProductModel);
    }

    /**
     * 新增产品型号
     *
     * @param miniProductModel 产品型号
     * @return 结果
     */
    @Override
    public int insertMiniProductModel(MiniProductModel miniProductModel) {
        miniProductModel.setCreationTime(DateUtils.getTime());//创建时间
        return miniProductModelMapper.insertMiniProductModel(miniProductModel);
    }

    /**
     * 修改产品型号
     *
     * @param miniProductModel 产品型号
     * @return 结果
     */
    @Override
    public int updateMiniProductModel(MiniProductModel miniProductModel) {
        return miniProductModelMapper.updateMiniProductModel(miniProductModel);
    }

    /**
     * 批量删除产品型号
     *
     * @param ids 需要删除的产品型号主键
     * @return 结果
     */
    @Override
    public int deleteMiniProductModelByIds(Long[] ids) {
        return miniProductModelMapper.deleteMiniProductModelByIds(ids);
    }

    /**
     * 删除产品型号信息
     *
     * @param id 产品型号主键
     * @return 结果
     */
    @Override
    public int deleteMiniProductModelById(Long id) {
        return miniProductModelMapper.deleteMiniProductModelById(id);
    }

    /**
     * 小程序商城界面回显  类型下面的型号附带
     */
    @Override
    public List<MiniProductModel> selectDictDataList1(SysDictData dictData) {
        return miniProductModelMapper.selectDictDataList1(dictData);
    }

    /**
     * 查询字典数据---膜类型
     */
    @Override
    public List<SysDictData> selectDictType(SysDictData dictData){
        return miniProductModelMapper.selectDictType(dictData);
    }
}
